/*
 * CCrawlerProject.h
 *
 *  Created on: 2012-4-6
 *      Author: li.zhaoping
 */

#ifndef CCRAWLERPROJECT_H_
#define CCRAWLERPROJECT_H_

#include <string>

#include "callback.h"

namespace lzpLib {

class CCrawlerProject {
	public:
		static CCrawlerProject* Create();
		virtual ~CCrawlerProject(){};

	public:
		virtual bool Init(std::string strUrl, std::string strRule,
				int nMaxDownCount = 5) = 0;
		virtual bool UnInit() = 0;
		virtual bool SetEventCallback(CTaskCallback* cb) = 0;
		virtual bool Start() = 0;
		virtual bool WaitEnd() = 0;
		virtual bool Stop() = 0;
		virtual bool Pause() = 0;

};

}

#endif /* CCRAWLERPROJECT_H_ */
